Method and apparatus for electric motor control

ABSTRACT

A method and apparatus for electric motor control includes a model predictive controller operating in a d-q reference frame to provide d-q reference frame voltage command signals that counteract a magnetic cross coupling within the motor.

INTRODUCTION

Electric vehicles (EV) and hybrid electric vehicles (HEV) (i.e.,electrified vehicles) may include an electric propulsion systemincluding one or more electric drive units including an electrictraction motor. Popular motor control methodologies include fieldoriented control and direct torque control. As computing power hasincreased, so too has interest in model predictive control of motors.

Model predictive control is appreciated for its capability in handlingcomplex multivariable control problems including high performancetraction motor controls in applications which require wide operatingranges, frequent torque output adjustments, durations of steady stateoperation, rapid dynamic response and high efficiency. Familiarorthogonal (direct and quadrature axes) current and voltage domaincontrols have proven adaptable for use with model predictive techniquesemploying cost function minimization to successfully track orthogonalcurrents.

Traction motors generally, and including permanent magnet and inductionmachines, exhibit magnetic cross coupling between the direct axis andquadrature axis which may negatively impact motor torque trackingperformance resulting in attenuated torque responses and torquedisturbances in the form of torque overshoot.

The subject disclosure relates to improved model predictive control ofmotors, particularly regarding improved performance in rejectingmagnetic cross coupling effects.

SUMMARY

In one exemplary embodiment, an apparatus for controlling an electricmotor may include a power inverter coupled to a poly-phase statorwinding of the electric motor, and a motor controller including a modelpredictive controller operating in a d-q reference frame to provide d-qreference frame voltage command signals (v_(q), v_(d)) that counteract amagnetic cross coupling within the electric motor, a transformationmodule receiving the d-q reference frame voltage command signals (v_(q),v_(d)) and generating stationary reference frame voltage command signals(v_(abc)), and a pulse-width generation module controlling the powerinverter based on the stationary reference frame voltage command signals(v_(abc)).

In addition to one or more of the features described herein, the modelpredictive controller may include a cost function module outputting costfunction voltage signals (v_(q)*, v_(d)*), and feedforward adjustments(v_(qff), v_(dff)) to the cost function voltage signals (v_(q)*, v_(d)*)to provide the d-q reference frame voltage command signals (v_(q),v_(d)) that counteract the magnetic cross coupling within the electricmotor.

In addition to one or more of the features described herein, the modelpredictive controller may include a cost function module outputting costfunction voltage signals (v_(q)*, v_(d)*), and feedback adjustments(v_(qfb), v_(dfb)) to the cost function voltage signals (v_(q)*, v_(d)*)to provide the d-q reference frame voltage command signals (v_(q),v_(d)) that counteract the magnetic cross coupling within the electricmotor.

In addition to one or more of the features described herein, the modelpredictive controller may include a cost function module outputting thed-q reference frame voltage command signals (v_(q), v_(d)) internallyforced to counteract d-q axis voltage deviations in accordance withpredetermined motor voltage references (v_(dref), v_(qref)).

In addition to one or more of the features described herein, thefeedforward adjustments (v_(qff), v_(dff)) to the cost function voltagesignals may be provided by feedforward adjustment modules throughmathematical calculations.

In addition to one or more of the features described herein, thefeedback adjustments (v_(qfb), v_(dfb)) to the cost function voltagesignals (v_(q)*, v_(d)*) may be provided by feedback adjustment modulesthrough mathematical calculations.

In addition to one or more of the features described herein, thefeedforward adjustments (v_(qff), v_(dff)) to the cost function voltagesignals (v_(q)*, v_(d)*) may be provided by feedforward adjustmentmodules through predefined data sets.

In addition to one or more of the features described herein, thefeedback adjustments (v_(qfb), v_(dfb)) to the cost function voltagesignals (v_(q)*, v_(d)*) may be provided by feedback adjustment modulesthrough predefined data sets.

In addition to one or more of the features described herein, thepredefined data sets may be referenced by one of d-q axis motor currentcommands (î_(q), î_(d)) and d-q axis motor currents (i_(q), i_(d)).

In addition to one or more of the features described herein, thepredefined data sets may be referenced by d-q axis motor currents(i_(q), i_(d)).

In addition to one or more of the features described herein, the modelpredictive controller may further include first order filters applied tothe feedforward adjustments (v_(qff), v_(dff)).

In another exemplary embodiment, a method for controlling an electricmotor including a poly-phase stator winding may include operating amodel predictive controller in accordance with a cost function in a d-qreference frame of the electric motor to provide d-q reference framevoltage command signals (v_(q), v_(d)) that counteract a magnetic crosscoupling within the electric motor, transforming the d-q reference framevoltage command signals (v_(q), v_(d)) into stationary reference framevoltage command signals (v_(abc)), and controlling a power invertercoupled to the poly-phase stator winding of the electric motor based onthe stationary reference frame voltage command signals (v_(abc)).

In addition to one or more of the features described herein, controllinga power inverter coupled to the poly-phase stator winding of theelectric motor based on the stationary reference frame voltage commandsignals (v_(abc)) may include providing a pulse-width generation modulewith the stationary reference frame voltage command signals (v_(abc)),generating switching vector signals (S_(abc)) based on the stationaryreference frame voltage command signals (v_(abc)), and controlling thepower inverter coupled to the poly-phase stator winding of the electricmotor based on the switching vector signals (S_(abc)).

In addition to one or more of the features described herein, operatingthe model predictive controller in accordance with the cost function inthe d-q reference frame of the electric motor to provide the d-qreference frame voltage command signals (v_(q), v_(d)) that counteractthe magnetic cross coupling within the electric motor may includeoutputting cost function voltage signals (v_(q)*, v_(d)*), and adjustingthe cost function voltage signals (v_(q)*, v_(d)*) with feedforwardadjustments (v_(qff), v_(dff)) to provide the d-q reference framevoltage command signals (v_(q), v_(d)) that counteract the magneticcross coupling within the electric motor.

In addition to one or more of the features described herein, operatingthe model predictive controller in accordance with the cost function inthe d-q reference frame of the electric motor to provide the d-qreference frame voltage command signals (v_(q), v_(d)) that counteractthe magnetic cross coupling within the electric motor may includeoutputting cost function voltage signals (v_(q)*, v_(d)*), and adjustingthe cost function voltage signals (v_(q)*, v_(d)*) with feedbackadjustments (v_(qfb), v_(dfb)) to provide the d-q reference framevoltage command signals (v_(q), v_(d)) that counteract the magneticcross coupling within the electric motor.

In addition to one or more of the features described herein, operatingthe model predictive controller in accordance with the cost function inthe d-q reference frame of the electric motor to provide the d-qreference frame voltage command signals (v_(q), v_(d)) that counteractthe magnetic cross coupling within the electric motor may includeforcing the d-q reference frame voltage command signals (v_(q), v_(d))internal to the cost function to counteract d-q axis voltage deviationsin accordance with predetermined motor voltage references (v_(dref),v_(qref)).

In yet another exemplary embodiment, an electrified vehicle may includean electric propulsion system having a rechargeable energy storagesystem and an electric drive unit, the electric drive unit may include apoly-phase electric motor having a poly-phase stator winding and atraction power inverter module including a motor controller and a powerinverter, the power inverter coupled to the poly-phase stator winding.The motor controller may include a model predictive controller operatingin a d-q reference frame to provide d-q reference frame voltage commandsignals (v_(q), v_(d)) that counteract a magnetic cross coupling withinthe electric motor, a transformation module receiving the d-q referenceframe voltage command signals (v_(q), v_(d)) and generating stationaryreference frame voltage command signals (v_(abc)), and a pulse-widthgeneration module controlling the power inverter based on the stationaryreference frame voltage command signals (v_(abc)).

In addition to one or more of the features described herein, the modelpredictive controller may include a cost function module outputting costfunction voltage signals (v_(q)*, v_(d)*), and one of (a) feedforwardadjustments (v_(qff), v_(dff)) to the cost function voltage signals(v_(q)*, v_(d)*) to provide the d-q reference frame voltage commandsignals (v_(q), v_(d)) that counteract the magnetic cross couplingwithin the electric motor and (b) feedback adjustments (v_(qfb),v_(dfb)) to the cost function voltage signals (v_(q)*, v_(d)*) toprovide the d-q reference frame voltage command signals (v_(q), v_(d))that counteract the magnetic cross coupling within the electric motor.

In addition to one or more of the features described herein, the modelpredictive controller may include a cost function module outputting thed-q reference frame voltage command signals (v_(q), v_(d)) internallyforced to counteract d-q axis voltage deviations in accordance withpredetermined motor voltage references (v_(dref), v_(qref)).

In addition to one or more of the features described herein, the costfunction module may include a sum of vector norm squares cost function

${\min\limits_{v_{q},v_{d}}{\sum\limits_{i = k}^{k + N}{W^{T}{{T_{qr} - {T_{q}(i)}}}^{2}}}} + {W^{y}{\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}}^{2}} + {\sum\limits_{j = k}^{k + M}{W^{v}{\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}}^{2}}}$whereini_(d)(i), i_(q)(i) are d-q axis currents,î_(d), î_(q) are d-q axis current references,

$\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}$represents a vector norm for d-q axis motor current error for forcingthe d-q motor currents (i_(d) (i), i_(q) (i) to the current references(î_(d), î_(q)),v_(d)(j), v_(q)(j) are d-q axis motor voltages,v_(dref), v_(qref) are d-q axis motor voltage references,

$\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}$represents a vector norm for forcing the motor voltages (v_(d)(j),v_(q)(j)) to counteract d-q axis voltage deviations and cross couplingeffects,T_(q) is a motor torque,T_(qr) is a motor torque reference,

(T_(qr) − T_(q)(i)represents a vector norm for forcing the motor torque (T_(q)) to themotor torque reference (T_(qr)), andW^(T) W^(y) and W^(v) represent respective weights for the vector normsquares.

The above features and advantages, and other features and advantages ofthe disclosure are readily apparent from the following detaileddescription when taken in connection with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features, advantages and details appear, by way of example only,in the following detailed description, the detailed descriptionreferring to the drawings in which:

FIG. 1 schematically illustrates an embodiment of an electric propulsionsystem in a vehicular application, in accordance with the presentdisclosure;

FIG. 2 is a block diagram of a motor controller and electric drive unitemploying an exemplary model predictive controller, in accordance withthe present disclosure;

FIG. 3 illustrates motor currents and motor torque responses, inaccordance with the present disclosure;

FIG. 4 illustrates an embodiment of a model predictive controller withmotor voltage feedforward adjustments, in accordance with the presentdisclosure; and

FIG. 5 illustrates an embodiment of a model predictive controller withmotor voltage feedback adjustments, in accordance with the presentdisclosure.

DETAILED DESCRIPTION

The following description is merely exemplary in nature and is notintended to limit the present disclosure, its application or uses.Throughout the drawings, corresponding reference numerals indicate likeor corresponding parts and features.

FIG. 1 schematically illustrates an embodiment of an electric propulsionsystem 101 on a vehicle 100. Vehicle and vehicular are understood torefer to any means of transportation including non-limiting examples ofmotorcycles, cars, trucks, buses, excavation, earth moving, constructionand farming equipment, railed vehicles like trains and trams, andwatercraft like ships and boats. The electric propulsion system 101 mayinclude various control components, electrical systems andelectro-mechanical systems including, for example, a rechargeable energystorage system (RESS) 104 and an electric drive unit (EDU) 102. Theelectric propulsion system 101 may be employed on a powertrain system togenerate propulsion torque as a replacement for, or in conjunction with,an internal combustion engine in various electric vehicle (EV)applications and hybrid electric vehicle (HEV) applications,respectively.

The EDU 102 may be of varying complexity, componentry and integration.An exemplary highly integrated EDU 102 may include, for example, analternating current (AC) motor (motor) 120 and a traction power invertermodule (TPIM) 106 including a motor controller 105 and a power inverter110. The motor 120 may include a motor output shaft 125 and sensors 182,for example to detect rotor/output shaft position and torque. The motoroutput shaft 125 may transfer torque between the motor 120 and drivelinecomponents (not illustrated), for example a final drive which mayinclude reduction and differential gear sets and one or more axleoutputs. The final drive may simply include reduction gearing and a propshaft output coupling to a differential gear set. One or more axles maycouple to the final drive or differential gear sets if separatetherefrom. Axle(s) may couple to a vehicle wheel(s) for transferringtractive force between a wheel and pavement. One having ordinary skillin the art will recognize alternative arrangements for drivelinecomponents. Propulsion torque requests or commands 136 (T_(cmd)) may beprovided by a vehicle controller 103 to the motor controller 105.

The motor controller 105 may include one or more control modules. Asused herein, control module, module, control, controller, control unit,electronic control unit, processor and similar terms mean any one orvarious combinations of one or more of Application Specific IntegratedCircuit(s) (ASIC), electronic circuit(s), central processing unit(s)(preferably microprocessor(s)) and associated memory and storage (readonly memory (ROM), random access memory (RAM), electrically programmableread only memory (EPROM), hard drive, etc.) or microcontrollersexecuting one or more software or firmware programs or routines,combinational logic circuit(s), input/output circuitry and devices (I/O)and appropriate signal conditioning and buffer circuitry, high speedclock, analog to digital (A/D) and digital to analog (D/A) circuitry andother components to provide the described functionality. A controlmodule may include a variety of communication interfaces includingpoint-to-point or discrete lines and wired or wireless interfaces tonetworks including wide and local area networks, and in-plant andservice-related networks. Functions of a control module as set forth inthis disclosure may be performed in a distributed control architectureamong several networked control modules. Software, firmware, programs,instructions, routines, code, algorithms and similar terms mean anycontroller executable instruction sets including calibrations, datastructures, and look-up tables. A control module may have a set ofcontrol routines executed to provide described functions. Routines areexecuted, such as by a central processing unit, and are operable tomonitor inputs from sensing devices and other networked control modulesand execute control and diagnostic routines to control operation ofactuators. Routines may be executed at regular intervals during ongoingengine and vehicle operation. Alternatively, routines may be executed inresponse to occurrence of an event, software calls, or on demand viauser interface inputs or requests.

The RESS 104 may, in one embodiment, include an electro-chemical batterypack 112, for example a high capacity, high voltage (HV) rechargeablelithium ion battery pack for providing power to the vehicle via a HVdirect current (DC) bus 108. The RESS 104 may also include a batterymanager module 114. High capacity battery packs may include a pluralityof battery pack modules allowing for flexibility in configurations andadaptation to application requirements. For example, in vehicular uses,the battery pack 112 may be modular to the extent that the number ofbattery pack modules may be varied to accommodate a desired energydensity or range objective of a particular vehicle platform, intendeduse, or cost target. Thus, battery packs may include a plurality oflithium ion modules themselves constructed from respective pluralitiesof lithium ion cells.

The motor 120 may be a poly-phase AC motor receiving poly-phase AC powerover a poly-phase motor control power bus (AC bus) 111 which is coupledto the power inverter 110. In one embodiment, the motor 120 is athree-phase motor and the power inverter 110 is a three-phase inverter.The power inverter 110 may include a plurality of solid-state switchessuch as IGBTs and power MOSFETs. The power inverter 110 couples to DCpower over the HV DC bus 108 (DC input voltage (V_(dc))) from the RESS104, for example at 400 volts. The motor controller 105 is coupled tothe power inverter 110 for control thereof. The power inverter 110electrically connects to stator phase windings of a three-phase statorwinding of the motor 120 via the AC bus 111, with electric currentmonitored on two or three of the phase leads thereof. The power inverter110 may be configured with suitable control circuits including pairedpower transistors (e.g., IGBTs) for transforming high-voltage DC voltageon the HV DC bus 108 to high-voltage three-phase AC voltage (v_(abc)) onthe AC bus 111 and transforming high-voltage three-phase AC voltage(v_(abc)) on the AC bus 111 to high-voltage DC voltage on the HV DC bus108. The power inverter 110 may employ any suitable pulse widthmodulation (PWM) control, for example sinusoidal pulse width modulation(SPWM) or space vector pulse width modulation (SVPWM), to generateswitching vector signals (S_(abc)) 109 to convert stored DC electricpower originating in the battery pack 112 of the RESS 104 to AC electricpower to drive the motor 120 to generate torque. Similarly, the inverter110 may convert mechanical power transferred to the motor 120 to DCelectric power to generate electric energy that is storable in thebattery pack 112 of the RESS 104, including as part of a regenerativebraking control strategy. The power inverter 110 may be configured toreceive the switching vector signals (S_(abc)) 109 from motor controller105 and control inverter states to provide the motor drive andregeneration functionality.

Control of the power inverter 110 may include high frequency switchingof the solid-state switches in accordance with the PWM control. A numberof design and application considerations and limitations determineinverter switching frequency and PWM control. Inverter controls for ACmotor applications may include fixed switching frequencies, for exampleswitching frequencies around 10-12 kHz and PWM controls that minimizeswitching losses of the IGBTs or other power switches of the powerinverter 110.

FIG. 2 is a block diagram illustrating the motor controller 105 and EDU102. The motor controller 105 in one embodiment may employ a modelpredictive controller (MPC) 200. The EDU 102 may include the motor 120,including a stator 120S and a rotor 120R, and a power inverter 110. Thestator 120S includes a three phase winding 202 and the rotor 120R may becoupled to the motor output shaft 125. Using a MPC control scheme, theMPC 200 controls the motor 120 via the power inverter 110 coupled to thethree phase winding 202 of the motor 120 so that the AC motor 120 canefficiently use the DC input voltage (V_(dc)) provided to the powerinverter 110 by controlling d-q axis voltage command signals 272 (v_(q),v_(d)).

In one embodiment, the motor 120 may be a three-phase, interiorpermanent magnet (IPM) AC machine. However, it is appreciated that theillustrated embodiment is only one non-limiting example of the types ofthree-phase AC machines that the disclosed embodiments may be appliedto. For example, induction machines may be used. Further, it will alsobe appreciated that the disclosed embodiments are not limited to athree-phase system and, in other embodiments, the motor 120 may haveother numbers of phases. It is appreciated that the disclosedembodiments may be applied to any type of multi-phase AC machine thatincludes fewer or more phases.

The motor 120 is coupled to the power inverter 110 via three inverterpoles and generates mechanical power as the product of torque and speedbased on the three-phase stationary reference frame stator currents 222(i_(abc)) of the power inverter 110. In the present embodiment, theangular position 221 (θ_(e)) of the rotor 120R is measured from one ormore sensors 182 such as an encoder. A derivative function, or a virtualsoftware observer, 237 of the angular position 221 (θ_(e)) of the rotor120R may be used to generate angular velocity 238 (ω_(e)) of the rotor120R.

The motor controller 105 may include a command generation module 240, arotating orthogonal (d-q) reference frame to static three-phase (abc)reference frame (dq-to-abc reference frame) transformation module 206, aPWM generation module 208, and a static three-phase (abc) referenceframe to rotating orthogonal (d-q) reference frame (abc-to-dq referenceframe) transformation module 227.

The command generation module 240 receives the torque command 136(T_(end)), angular velocity 238 (ω_(e)), and the DC input voltage(V_(dc)) 239 as inputs, along with other system parameters dependingupon implementation. The command generation module 240 uses these inputsto generate d-q axis motor current commands 242 (î_(d), î_(q)) that willcause the AC motor 120 to generate the torque command 136 (T_(cmd)) atangular velocity 238 (ω_(e)). In one embodiment, command generationmodule 240 is implemented in look-up tables.

The abc-to-dq transformation module 227 receives measured three-phasestationary reference frame stator currents 222 (i_(abc)) that are fedback from the motor 120. The abc-to-dq transformation module 227 usesthese three-phase stationary reference frame stator currents 222(i_(abc)) to perform an abc-to-dq reference frame transformation totransform the three-phase stationary reference frame stator currents 222(i_(abc)) into the d-q axis motor currents 232 (i_(d), i_(q)) which arefed back to the MPC 200. The process of stationary-to-synchronousconversion is well-known in the art.

The MPC 200 receives the d-q axis motor current commands 242 (î_(d),î_(q)), the d-q axis motor currents 232 (i_(d), i_(q)), motor torqueT_(q) from one or more sensors 182 such as a torque sensor, and theangular velocity (ω_(e)) to generate d-q axis voltage command signals272 (v_(q), v_(d)). The d-q axis voltage command signals 272 (v_(q),v_(d)) are DC commands that have a constant value as a function of timefor steady state operation. The process of current to voltage conversionby the MPC 200 may be implemented through a cost function minimizationas further described herein.

The dq-to-abc reference frame transformation module 206 receives the d-qaxis voltage command signals 272 (v_(q), v_(d)) and, based on thesesignals, generates stationary reference frame voltage command signals207 (v_(abc)) (also referred to as “phase voltage signals” or “phasevoltage command signals”) that are sent to the PWM generation module208. The dq-to-abc transformation may be performed using any knowntransformation techniques.

The power inverter 110 is coupled to the PWM generation module 208. ThePWM generation module 208 is used for the control of pulse widthmodulation of the phase voltage command signals 207 (v_(abc)). Switchingvector signals 109 (S_(abc)) are generated based on duty cycle waveformsthat are internally generated by the PWM generation module 208 to have aparticular duty cycle during each PWM period. The PWM generation module208 generates the switching vector signals 109 (S_(abc)) based on thephase voltage command signals 207 (v_(abc)) and provides the switchingvector signals 109 (S_(abc)) to the power inverter 110. The particularmodulation algorithm implemented in the PWM generation module 208 may beany known modulation algorithm including continuous PWM (e.g., SpaceVector Pulse Width Modulation (SVPWM)) or discontinuous PWM (e.g., DPWM)to create AC waveforms that drive the AC motor 120 at varying angularvelocities based on the DC input voltage 239 (V_(dc)). It is generallyappreciated that discontinuous PWM has lower switching losses and henceless heat generation than continuous PWM. Moreover, the switchingfrequency implemented in the PWM generation module 208 may be fixed orvariable in accordance with various control objectives and efficiencytradeoffs.

The switching vector signals 109 (S_(abc)) control the switching statesof switches in the power inverter 110 to generate the respective phasevoltages at each phase winding of the motor 120. The motor 120 receivesthe three-phase voltage signals generated by the power inverter 110 andgenerates a machine output consistent with the torque command 136(T_(cmd)).

In accordance with one embodiment, the MPC 200 may include a costfunction module 210 to provide an optimal solution, for example, to acost function such as a sum of vector norm squares as follows.

$\begin{matrix}{{\min\limits_{v_{q},v_{d}}{\sum_{i = k}^{k + N}{W^{y}{\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}}^{2}}}} + {\sum_{j = k}^{k + M}{W^{\Delta v}{\begin{pmatrix}{\Delta{v_{q}(j)}} \\{\Delta{v_{d}(j)}}\end{pmatrix}}^{2}}}} & \lbrack 1\rbrack\end{matrix}$The MPC 200 may determine the d-q axis voltage command signals 272(v_(q), v_(d)) in accordance with minimizing the cost function [1]wherein the d-q axis motor currents i_(d), i_(q) track the d-q axismotor current commands 242 (î_(d), î_(q)). The cost function [1] in thepresent embodiment is based on minimizing current error relative tocurrent command references. Alternative cost functions may be employedincluding, for example, a cost function based on torque error. It isappreciated in the cost function [1] of the present embodiment thatcurrent references are represented in the d-q axis motor currentcommands 242 (î_(d), î_(q)) provided by the command generation module240 (e.g., look-up tables). Thus, in the cost function [1]:

$\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}$represents a vector norm for d-q axis motor current error for forcingthe d-q axis motor currents (i_(d) (i), i_(q)(i)) to the d-q axis motorcurrent references (î_(d), î_(q)),

$\begin{pmatrix}{\Delta{v_{q}(j)}} \\{\Delta{v_{d}(j)}}\end{pmatrix}$represents a vector norm for limiting excessive changes of d-q axismotor voltages (v_(q), v_(d)), andW^(y) and W^(Δv) represent respective weights for the vector normsquares, which weights may be static, time variable or conditionvariable.

The MPC 200 is based on an electric dynamic model (model) of, in thepresent embodiment, an IPM motor. Similar electric dynamic models forother AC electric machines (e.g., induction motors) may also provide thebasis for an MPC control of such alternative machines. The model may berepresented as follows:

$\begin{matrix}{{L_{q}\frac{{di}_{q}}{dt}} = {{{- L_{d}}i_{d}\omega_{e}} - {\lambda_{m}\omega_{e}} - {r_{s}i_{q}} + v_{q}}} & \lbrack 2\rbrack\end{matrix}$ $\begin{matrix}{{L_{d}\frac{{di}_{d}}{dt}} = {{L_{q}i_{q}\omega_{e}} - {r_{s}i_{d}} + v_{d}}} & \lbrack 3\rbrack\end{matrix}$ $\begin{matrix}{T_{q} = {\frac{3}{2}{P\left( {{\lambda_{m}i_{q}} - {\left( {L_{q} - L_{d}} \right)i_{q}i_{d}}} \right)}}} & \lbrack 4\rbrack\end{matrix}$wherein i_(d) and i_(q) represent the d-axis motor current and theq-axis motor current, respectively;

-   -   v_(d) and v_(q) represent the d-axis motor voltage and the        q-axis motor voltage, respectively;    -   L_(d) and L_(q) represent the d-axis motor inductance and the        q-axis motor inductance, respectively;    -   λ_(m) represents the mechanical linkage flux;    -   ω_(e) represents angular velocity of the rotor;    -   T_(q) represents the motor torque; and    -   P represents the number of motor pole pairs.        It is recognized that the model relationships [2] and [3] may be        rearranged and represented by equivalent relationships [2a] and        [3a] as follows:

$\begin{matrix}{v_{q} = {{L_{q}\frac{{di}_{q}}{dt}} + {r_{s}i_{q}} + \left\lbrack {{L_{d}i_{d}\omega_{e}} + {\lambda_{m}\omega_{e}}} \right\rbrack}} & \left\lbrack {2a} \right\rbrack\end{matrix}$ $\begin{matrix}{v_{d} = {{L_{d}\frac{{di}_{d}}{dt}} + {r_{s}i_{d}} + \left\lbrack {{- L_{q}}i_{q}\omega_{e}} \right\rbrack}} & \left\lbrack {3a} \right\rbrack\end{matrix}$

It is recognized that the product of the d-axis motor inductance andcurrent (L_(d)i_(d)) is equivalent to the d-axis motor flux (λ_(d)).Similarly, the product of the q-axis motor inductance and current(L_(q)i_(q)) is equivalent to the q-axis motor flux (λ_(q)). Therefore,from the model, magnetic cross coupling in the motor is apparent andproportional to the d-q axis motor currents (i_(d), i_(q)) and motorspeed (i.e., angular velocity (ω_(e))). The cross coupling may beunderstood from the model relationships [2] and [3] wherein

${L_{q}\frac{{di}_{q}}{dt}} = {{{f\left\lbrack {{{- L_{d}}i_{d}\omega_{e}} - {\lambda_{m}\omega_{e}}} \right\rbrack}{and}L_{d}\frac{{di}_{d}}{dt}} = {f\left\lbrack {L_{q}i_{q}\omega_{e}} \right\rbrack}}$and wherein the bracketed terms in the model relationships [2a] and[3a], [L_(d)i_(d)ω_(e)+λ_(m)λ_(e)] and [−L_(q)i_(q)ω_(e)], may bereferred to as cross coupling terms. It is appreciated that these crosscoupling terms represent d-q axis voltage deviations due to magneticcoupling and may be referred to herein as cross coupled voltagedeviations. Often, λ_(m)ω_(e) may have a relatively less significantimpact than L_(d)i_(d) ω_(e) and may be ignored or treated as varyingproportionally to angular velocity (ω_(e)) below the field weakeningregion of the motor. In practice, such cross coupling and resultantcross coupled voltage deviations may undesirably affect the motortorque. Cross coupling as used herein is understood to refer to magneticcross coupling within the motor whether represented in terms of motorflux λ or motor inductance and current (Li).

With reference to FIG. 3 , the motor torque effects of exemplary directaxis (d-axis) and quadrature axis (q-axis) current changes areillustrated for a motor controlled in accordance with an MPC including acost function [1] as described herein. The upper chart 301 of FIG. 3illustrates current in Amperes (Amps) along the vertical axis 303 andplots of d-axis motor current 325 (i _(d)) and q-axis motor current 321(i _(q)) that follow d-axis current commands (315, 317, 319) and q-axismotor current commands (311, 313). The lower chart 305 of FIG. 3illustrates corresponding motor torque response in Newton-meters (Nm)along the vertical axis 307. Time is illustrated in seconds (Sec) forboth the upper chart 301 and lower chart 305 along a common horizontaltime axis 309. FIG. 3 illustrates MPC with unchecked cross couplingeffects from the d-q axis motor currents (i_(d), i_(q)). The MPC priorto time t₁ is substantially steady state with the q-axis motor currentcommand 311 (î_(q)) and the d-axis motor current command 317 (î_(d)).The q-axis motor current 321 (i _(q)) therefore tracks the q-axis motorcurrent command 311 (î_(q)), and the d-axis motor current 325 (i _(d))therefore tracks the d-axis motor current command 317 (î_(d)). Motortorque 335 prior to time t₁ is also seen to be constant. At time t₁, theMPC issues a reduced positive q-axis motor current command 313 (î_(q))and a reduced negative d-axis motor current command 315 (î_(d)). Thecoupling effect of the q-axis motor current 321 (i _(q)) upon the d-axismotor current 325 (i _(d)) may be seen in the transient overshoot 315 ofthe d-axis motor current 325 (i _(d)) and may reduce the slew rate ofthe motor torque at 337 since the d-axis is the axis by which rotor fluxis produced. At time t₂, the MPC maintains the positive q-axis motorcurrent command 313 (î_(q)) and commands a larger negative d-axis motorcurrent command 319 (i _(d)). The coupling effect of the d-axis motorcurrent 325 (i _(d)) upon the q-axis motor current 321 (i _(q)) may beseen in the transient overshoot 323 of the q-axis motor current 321 (i_(q)) and may create a transient torque disturbance overshoot of themotor torque at 339 since the q-axis is the axis on which torque isproduced. Thus, it is appreciated that the cross coupling of thed-q-axis motor currents (i_(d), i_(q)) negatively affects the torquetracking performance of MPC. It is further appreciated from the modelrelationships [2a] and [3a] that the cross coupling of the d-q axismotor currents (i_(d), i_(q)) may manifest in the d-q-axis motorvoltages (v_(q), v_(d)) as cross coupled voltage deviations.

In accordance with the present disclosure, an improved MPC may includeaddressing the magnetic cross coupling to improve the torque tracking ofthe motor. Advantageously, cross coupling may be addressed in the motorvoltage domain, and specifically in the d-q-axis motor voltages. Withreference to FIG. 4 , in accordance with one embodiment, an improved MPC400 may employ feedforward adjustments 403 to the cost function d-q-axisvoltage signals (v_(q)*, v_(d)*) output from the cost function module410 to counteract the cross coupling. The cost function module 410 inone embodiment may employ a cost function such as a sum of vector normsquares shown in cost function [1] herein. The feedforward adjustments403 may be provided by respective feedforward adjustment modules 405 and407. The feedforward adjustments 403 may be represented in a d-axisfeedforward adjustment (v_(dff)) and a q-axis feedforward adjustment(v_(qff)). In practice, the d-axis feedforward adjustment (v_(dff))corresponds to the cross coupling term [−L_(q)i_(q) ω_(e)] affecting thed-axis motor voltage (v_(d)) and a q-axis feedforward adjustment(v_(qff)) corresponds to the cross coupling term[L_(d)i_(d)ω_(e)+λ_(m)ω_(e)] affecting the q-axis motor voltage (v_(q)).It is known that the d-axis motor inductance (L_(d)) and the q-axismotor inductance (L_(q)) both vary nonlinearly as functions of both thed-axis motor current (i_(d)) and the q-axis motor current (i_(q)). Inone implementation, the feedforward adjustment modules 405 and 407 mayprovide the d-axis feedforward adjustment (v_(dff)) and the q-axisfeedforward adjustment (v_(qff)) calculations from predefinedmultivariable nonlinear equations based on known simulation andempirical derivations, regressions, curve fitting, linear and nonlinearpiecewise functions or approximations and other mathematically basedcalculation techniques. Alternatively, the feedforward adjustmentmodules 405 and 407 may provide predefined data sets in the form oflook-up tables to be referenced to return the d-axis feedforwardadjustment (v_(dff)) and the q-axis feedforward adjustment (v_(qff)). Aminimum set of input variables used in the determination of d-axisfeedforward adjustment (v_(dff)) and the q-axis feedforward adjustment(v_(qff)) may include the q-axis motor current command (î_(q)) thed-axis motor current command (î_(d)) and angular velocity (ω_(e)) asshown in FIG. 4 . Additional input variables, such as motor temperature,also may be employed. Alternatively, the q-axis motor current (i_(q))and the d-axis motor current (i_(d)) may be utilized in place of theq-axis motor current command (î_(q)), the d-axis motor current command(î_(d)). As shown in FIG. 4 , the d-axis feedforward adjustment(v_(dff)) and the q-axis feedforward adjustment (v_(qff)) may besubjected to filters 402 and 404 respectively, which filters may, forexample, provide first order tuning in the application of thefeedforward adjustments.

With reference to FIG. 5 , in accordance with another embodiment, animproved MPC 500 may employ feedback adjustments 509 to the costfunction d-q-axis voltage signals (v_(q)*, v_(d)*) output from the costfunction module 510 to counteract the cross coupling. The cost functionmodule 510 in one embodiment may employ a cost function such as a sum ofvector norm squares shown in cost function [1] herein. The feedbackadjustments 509 may be provided by respective feedback adjustmentmodules 511 and 513. The feedback adjustments 509 may be represented ina d-axis feedback adjustment (v_(dfb)) and a q-axis feedback adjustment(v_(qfb)). In practice, the d-axis feedback adjustment (v_(dfb))corresponds to the cross coupling term [−L_(q)i_(q) ω_(e)] affecting thed-axis motor voltage (v_(d)) and a q-axis feedback adjustment (v_(qfb))corresponds to the cross coupling term [L_(d)i_(d)ω_(e)+λ_(m)ω_(e)]affecting the q-axis motor voltage (v_(q)). It is known that the d-axismotor inductance (L_(d)) and the q-axis motor inductance (L_(q)) bothvary nonlinearly as functions of both the d-axis motor current (i_(d))and the q-axis motor current (i_(q)). In one implementation, thefeedback adjustment modules 511 and 513 may provide the d-axis feedbackadjustment (v_(dfb)) and the q-axis feedback adjustment (v_(qfb))calculations from predefined multivariable nonlinear equations based onknown simulation and empirical derivations, regressions, curve fitting,linear and nonlinear piecewise functions or approximations and othermathematically based calculation techniques. Alternatively, the feedbackadjustment modules 511 and 513 may provide predefined data sets in theform of look-up tables to be referenced to return the d-axis feedbackadjustment (v_(dfb)) and the q-axis feedback adjustment (v_(qfb)). Aminimum set of input variables used in the determination of d-axisfeedback adjustment (v_(dfb)) and the q-axis feedback adjustment(v_(qfb)) may include the q-axis motor current (i_(q)) and the d-axismotor current (i_(d)) and angular velocity (ω_(e)) as shown in FIG. 5 .Additional input variables, such as motor temperature, also may beemployed.

In accordance with another embodiment, an improved MPC may employ a costfunction module internally accounting for cross coupled voltagedeviations for forcing the motor voltages (v_(d)(j), V_(q)(j)) tocounteract the cross coupled voltage deviations thereby counteractingthe cross coupling without the need for feedforward adjustments orfeedback adjustments to the d-q axis voltage command signals (v_(q),v_(d)) output from the cost function module 210. Thus, in accordancewith this embodiment, the MPC 200 may include a cost function module 210to provide an optimal solution, for example, to a cost function such asa sum of vector norm squares as follows.

$\begin{matrix}{{\min\limits_{v_{q},v_{d}}{\sum_{i = k}^{k + N}{W^{T}{{T_{qr} - {T_{q}(i)}}}^{2}}}} + {W^{y}{\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}}^{2}} + {\sum_{j = k}^{k + M}{W^{v}{\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}}^{2}}}} & \lbrack 5\rbrack\end{matrix}$

The MPC 200 may determine the d-q axis voltage command signals 272(v_(q), v_(d)) in accordance with minimizing the cost function [5]wherein the d-q axis motor currents i_(d), i_(q) track the motor currentcommands 242 (î_(d), î_(q)) and the motor voltages (v_(d)(j), V_(q)(j))are forced to counteract the cross coupled voltage deviations throughthe d-q axis motor voltage references (v_(dref), v_(qref)) as describedfurther herein. Additionally, the cost function [5] in the presentembodiment may further include tracking of the motor torque T_(q) to thetorque command (T_(cmd)) as the reference. It is appreciated in the costfunction [5] of the present embodiment that current references arerepresented in the d-q axis motor current commands 242 (î_(d), î_(q))provided by the command generation module 240 (e.g., look-up tables),and the torque reference is represented in the torque command 136(T_(cmd)) provided by the vehicle controller 103. Furthermore, it isappreciated in the cost function [5] of the present embodiment that thed-q axis motor voltage references (v_(dref), v_(qref)) may be providedas follows:

$\begin{matrix}{v_{qref} = \left\lbrack {{L_{d}{\hat{i}}_{d}\omega_{e}} + {\lambda_{m}\omega_{e}}} \right\rbrack} & \lbrack 6\rbrack\end{matrix}$ $\begin{matrix}{v_{dref} = \left\lbrack {{- L_{q}}{\hat{i}}_{q}\omega_{e}} \right\rbrack} & \lbrack 7\rbrack\end{matrix}$wherein the d-q axis motor current commands 242 (î_(d), î_(q)) are usedin the determination of the d-q axis motor voltage references (v_(dref),v_(qref)) It is recognized that the bracketed terms are the crosscoupling terms responsible for cross coupled voltage deviations due tomagnetic coupling. Thus, in the cost function [5]:

$\begin{pmatrix}{\hat{i}}_{q} & {- {i_{q}(i)}} \\{\hat{i}}_{d} & {- {i_{d}(i)}}\end{pmatrix}$represents the vector norm for d-q axis motor current error for forcingthe d-q axis motor currents (i_(d) (i), i_(q)(i)) to the d-q axiscurrent references (î_(d), î_(q)),

$\begin{pmatrix}{\nu_{qref} - {\nu_{q}(j)}} \\{\nu_{dref} - {\nu_{d}(j)}}\end{pmatrix}$represents a vector norm for forcing the d-q axis motor voltages(v_(d)(j), V_(q)(j)) to counteract the cross coupled voltage deviationsand undesirable cross coupling effects,

(T_(qr) − T_(q)(i)represents a vector norm for forcing the motor torque (T_(q)) to thetorque command (T_(cmd)), andW^(T) w^(y) and W^(v) represent respective weights for the vector normsquares, which weights may be static, time variable or conditionvariable.

Thus, it may be appreciated that the d-q axis voltage command signals272 (v_(q), v_(d)) output from the MPC 200 in accordance with the costfunction [5] of the present embodiment substantially counteract theundesirable magnetic cross coupling effects within the motor.

Unless explicitly described as being “direct,” when a relationshipbetween first and second elements is described in the above disclosure,that relationship can be a direct relationship where no otherintervening elements are present between the first and second elementsbut can also be an indirect relationship where one or more interveningelements are present (either spatially or functionally) between thefirst and second elements.

One or more steps within a method may be executed in different order (orconcurrently) without altering the principles of the present disclosure.Further, although each of the embodiments is described above as havingcertain features, any one or more of those features described withrespect to any embodiment of the disclosure can be implemented in and/orcombined with features of any of the other embodiments, even if thatcombination is not explicitly described. In other words, the describedembodiments are not mutually exclusive, and permutations of one or moreembodiments with one another remain within the scope of this disclosure.

While the above disclosure has been described with reference toexemplary embodiments, it will be understood by those skilled in the artthat various changes may be made, and equivalents may be substituted forelements thereof without departing from its scope. In addition, manymodifications may be made to adapt a particular situation or material tothe teachings of the disclosure without departing from the essentialscope thereof. Therefore, it is intended that the present disclosure isnot limited to the particular embodiments disclosed, but will includeall embodiments falling within the scope thereof

What is claimed is:
 1. An apparatus for controlling an electric motor,comprising: a power inverter coupled to a poly-phase stator winding ofthe electric motor; and a motor controller comprising: a modelpredictive controller operating in a d-q reference frame to provide d-qreference frame voltage command signals (v_(q), v_(d)) that counteract amagnetic cross coupling within the electric motor; wherein the modelpredictive controller comprises a cost function module outputting thed-q reference frame voltage command signals (v_(q), v_(d)) internallyforced to counteract d-q axis voltage deviations in accordance withpredetermined motor voltage references (V_(dref), v_(qref)); wherein thecost function module comprises a sum of vector norm squares costfunction${\min\limits_{v_{q},v_{d}}{\sum\limits_{i = k}^{k + N}{W^{T}{\left( {T_{qr} - {T_{q}(i)}} \right.}^{2}}}} + {W^{y}{\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}}^{2}} + {\sum\limits_{j = k}^{k + M}{W^{v}{\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}}^{2}}}$ wherein i_(d) (i), i_(q)(i) are d-q axiscurrents, î_(d), î_(q) are d-q axis current references,$\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}$ represents a vector norm for d-q axis motor currenterror for forcing the d-q motor currents (i_(d)(i), i_(q) (i)) to thecurrent references (î_(d), î_(q)), v_(d)(j), v_(q)(j) are d-q axis motorvoltages, v_(dref), v_(qref) are d-q axis motor voltage references,$\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}$ represents a vector norm for forcing the motor voltages(v_(d)(j), v_(q) (j)) to counteract d-q axis voltage deviations andcross coupling effects, T_(q) is a motor torque, T_(qr) is a motortorque reference, (T_(qr) − T_(q)(i) represents a vector norm forforcing the motor torque (T_(q)) to the motor torque reference (T_(qr)),and W^(T) W^(y) and W^(v) represent respective weights for the vectornorm squares; a transformation module receiving the d-q reference framevoltage command signals (v_(q), v_(d)) and generating stationaryreference frame voltage command signals (v_(abc)); and a pulse-widthgeneration module controlling the power inverter based on the stationaryreference frame voltage command signals (v_(abc)).
 2. The apparatus ofclaim 1 wherein the model predictive controller comprises: the costfunction module outputting cost function voltage signals (v_(q)*,v_(d)*); and feedforward adjustments (v_(qff), v_(dff)) to the costfunction voltage signals (v_(q)*, v_(d)*) to provide the d-q referenceframe voltage command signals (v_(q), v_(d)) that counteract themagnetic cross coupling within the electric motor.
 3. The apparatus ofclaim 2 wherein the feedforward adjustments (v_(qff), v_(dff)) to thecost function voltage signals are provided by feedforward adjustmentmodules through mathematical calculations.
 4. The apparatus of claim 2wherein the feedforward adjustments (v_(qff), v_(dff)) to the costfunction voltage signals (v_(q)*, v_(d)*) are provided by feedforwardadjustment modules through predefined data sets.
 5. The apparatus ofclaim 4 wherein the predefined data sets are referenced by one of d-qaxis motor current commands (î_(q), î_(d)) and d-q axis motor currents(i_(q), i_(d)).
 6. The apparatus of claim 2 wherein the model predictivecontroller further comprises first order filters applied to thefeedforward adjustments (v_(qff), v_(dff)).
 7. The apparatus of claim 1wherein the model predictive controller comprises: the cost functionmodule outputting cost function voltage signals (v_(q)*, v_(d)*); andfeedback adjustments (v_(qfb), v_(dfb)) to the cost function voltagesignals (v_(q)*, v_(d)*) to provide the d-q reference frame voltagecommand signals (v_(q), v_(d)) that counteract the magnetic crosscoupling within the electric motor.
 8. The apparatus of claim 7 whereinthe feedback adjustments (v_(qfb), v_(dfb)) to the cost function voltagesignals (v_(q)*, v_(d)*) are provided by feedback adjustment modulesthrough mathematical calculations.
 9. The apparatus of claim 7 whereinthe feedback adjustments (v_(qfb), v_(dfb)) to the cost function voltagesignals (v_(q)*, v_(d)*) are provided by feedback adjustment modulesthrough predefined data sets.
 10. The apparatus of claim 9 wherein thepredefined data sets are referenced by d-q axis motor currents (i_(q),i_(d)).
 11. A method for controlling an electric motor including apoly-phase stator winding, comprising: operating a model predictivecontroller in accordance with a cost function in a d-q reference frameof the electric motor to provide d-q reference frame voltage commandsignals (v_(q), v_(d)) that counteract a magnetic cross coupling withinthe electric motor; wherein the model predictive controller comprises acost function module outputting the d-q reference frame voltage commandsignals (v_(q), v_(d)) internally forced to counteract d-q axis voltagedeviations in accordance with predetermined motor voltage references(v_(dref), v_(qref)); wherein the cost function module comprises a sumof vector norm squares cost function${\min\limits_{v_{q},v_{d}}{\sum\limits_{i = k}^{k + N}{W^{T}{\left( {T_{qr} - {T_{q}(i)}} \right.}^{2}}}} + {W^{y}{\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}}^{2}} + {\sum\limits_{j = k}^{k + M}{W^{v}{\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}}^{2}}}$ wherein i_(d) (i), i_(q)(i) are d-q axiscurrents, î_(d), î_(q) are d-q axis current references,$\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}$ represents a vector norm for d-q axis motor currenterror for forcing the d-q motor currents (i_(d)(i), i_(q) (i)) to thecurrent references (î_(d), î_(q)), v_(d)(j), v_(q)(j) are d-q axis motorvoltages, v_(dref), v_(qref) are d-q axis motor voltage references,$\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}$ represents a vector norm for forcing the motor voltages(v_(d)(j), v_(q) (j)) to counteract d-q axis voltage deviations andcross coupling effects, T_(q) is a motor torque, T_(qr) is a motortorque reference, (T_(qr) − T_(q)(i) represents a vector norm forforcing the motor torque (T_(q)) to the motor torque reference (T_(qr)),and W^(T) W^(y) and W^(v) represent respective weights for the vectornorm squares; transforming the d-q reference frame voltage commandsignals (v_(q), v_(d)) into stationary reference frame voltage commandsignals (v_(abc)); and controlling a power inverter coupled to thepoly-phase stator winding of the electric motor based on the stationaryreference frame voltage command signals (v_(abc)).
 12. The method ofclaim 11, wherein controlling a power inverter coupled to the poly-phasestator winding of the electric motor based on the stationary referenceframe voltage command signals (v_(abc)) comprises: providing apulse-width generation module with the stationary reference framevoltage command signals (v_(abc)); generating switching vector signals(S_(abc)) based on the stationary reference frame voltage commandsignals (v_(abc)); and controlling the power inverter coupled to thepoly-phase stator winding of the electric motor based on the switchingvector signals (S_(abc)).
 13. The method of claim 11, wherein operatingthe model predictive controller in accordance with the cost function inthe d-q reference frame of the electric motor to provide the d-qreference frame voltage command signals (v_(q), v_(d)) that counteractthe magnetic cross coupling within the electric motor comprises:outputting cost function voltage signals (v_(q)*, v_(d)*); and adjustingthe cost function voltage signals (v_(q)*, v_(d)*) with feedforwardadjustments (v_(qff), v_(dff)) to provide the d-q reference framevoltage command signals (v_(q), v_(d)) that counteract the magneticcross coupling within the electric motor.
 14. The method of claim 13wherein the feedforward adjustments (v_(qfb), v_(dfb)) to the costfunction voltage signals (v_(q)*, v_(d)*) are provided by mathematicalcalculations.
 15. The method of claim 13 wherein the feedforwardadjustments (v_(qff), v_(dff)) to the cost function voltage signals(v_(q)*, v_(d)*) are provided by predefined data sets.
 16. The method ofclaim 11, wherein operating the model predictive controller inaccordance with the cost function in the d-q reference frame of theelectric motor to provide the d-q reference frame voltage commandsignals (v_(q), v_(d)) that counteract the magnetic cross couplingwithin the electric motor comprises: outputting cost function voltagesignals (v_(q)*, v_(d)*); and adjusting the cost function voltagesignals (v_(q)*, v_(d)*) with feedback adjustments (v_(qfb), v_(dfb)) toprovide the d-q reference frame voltage command signals (v_(q), v_(d))that counteract the magnetic cross coupling within the electric motor.17. The method of claim 16 wherein the feedback adjustments (v_(qfb),v_(dfb)) to the cost function voltage signals (v_(q)*, v_(d)*) areprovided by mathematical calculations.
 18. The method of claim 16wherein the feedback adjustments (v_(qfb), v_(dfb)) to the cost functionvoltage signals (v_(q)*, v_(d)*) are provided by predefined data sets.19. An electrified vehicle, comprising: an electric propulsion systemincluding a rechargeable energy storage system and an electric driveunit, the electric drive unit including a poly-phase electric motorhaving a poly-phase stator winding and a traction power inverter moduleincluding a motor controller and a power inverter, the power invertercoupled to the poly-phase stator winding; and the motor controllercomprising: a model predictive controller operating in a d-q referenceframe to provide d-q reference frame voltage command signals (v_(q),v_(d)) that counteract a magnetic cross coupling within the electricmotor; wherein the model predictive controller comprises a cost functionmodule outputting the d-q reference frame voltage command signals(v_(q), v_(d)) internally forced to counteract d-q axis voltagedeviations in accordance with predetermined motor voltage references(v_(dref), v_(qref)); wherein the cost function module comprises a sumof vector norm squares cost function${\min\limits_{v_{q},v_{d}}{\sum\limits_{i = k}^{k + N}{W^{T}{\left( {T_{qr} - {T_{q}(i)}} \right.}^{2}}}} + {W^{y}{\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}}^{2}} + {\sum\limits_{j = k}^{k + M}{W^{v}{\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}}^{2}}}$ wherein i_(d) (i), i_(q)(i) are d-q axiscurrents, î_(d), î_(q) are d-q axis current references,$\begin{pmatrix}{{\hat{i}}_{q} - {i_{q}(i)}} \\{{\hat{i}}_{d} - {i_{d}(i)}}\end{pmatrix}$ represents a vector norm for d-q axis motor currenterror for forcing the d-q motor currents (i_(d)(i), i_(q)(i)) to thecurrent references (î_(d), î_(q)), v_(d)(j), v_(q)(j) are d-q axis motorvoltages, v_(dref), v_(qref) are d-q axis motor voltage references,$\begin{pmatrix}{v_{qref} - {v_{q}(j)}} \\{v_{dref} - {v_{d}(j)}}\end{pmatrix}$ represents a vector norm for forcing the motor voltages(v_(d)(j), v_(q)(j)) to counteract d-q axis voltage deviations and crosscoupling effects, T_(q) is a motor torque, T_(qr) is a motor torquereference, (T_(qr) − T_(q)(i) represents a vector norm for forcing themotor torque (T_(q)) to the motor torque reference (T_(qr)), and W^(T)W^(y) and W^(v) represent respective weights for the vector normsquares; a transformation module receiving the d-q reference framevoltage command signals (v_(q), v_(d)) and generating stationaryreference frame voltage command signals (v_(abc)); and a pulse-widthgeneration module controlling the power inverter based on the stationaryreference frame voltage command signals (v_(abc)).
 20. The electrifiedvehicle of claim 19 wherein the model predictive controller comprises: acost function module outputting cost function voltage signals (v_(q)*,v_(d)*); and one of (a) feedforward adjustments (v_(qff), v_(dff)) tothe cost function voltage signals (v_(q)*, v_(d)*) to provide the d-qreference frame voltage command signals (v_(q), v_(d)) that counteractthe magnetic cross coupling within the electric motor and (b) feedbackadjustments (v_(qfb), v_(dfb)) to the cost function voltage signals(v_(q)*, v_(d)*) to provide the d-q reference frame voltage commandsignals (v_(q), v_(d)) that counteract the magnetic cross couplingwithin the electric motor.